/*
 * Class4C.h
 *
 *  Created on: 2015年7月16日
 *      Author: Administrator
 */

#ifndef BCCH_CLASS4C_H_
#define BCCH_CLASS4C_H_

#include "Class4.h"

//<Header: bitstring(7)>
//<Class Type 4: 110>
//<Segment type: 0010>
//struct ST4C_Header{
//	//header 由classType、segment Type组成
//	//3 bit
//	unsigned char classType:3;
//	//4bits
//	unsigned char segmentType:4;
//};
//<Power Control Params>– 112 bits
//<HHT SQT: bitstring(7)> SQT value for Extended Power Class 0 terminals except during fax and data. This parameter also covers all other Extended Power Classes not specifically listed in this section
//<HHT Data SQT: bitstring(7)> SQT value for Extended Power Class 0 terminals during fax and data. This parameter also covers all other Extended Power Classes not specifically listed in this section
//<VT SQT: bitstring(7)> SQT value for Extended Power Class 1 terminals except during fax and data
//<VT Data SQT: bitstring(7)> SQT value for Extended Power Class 1 terminals during fax and data
//<FT SQT: bitstring(7)> SQT value for Extended Power Class 6 terminals except during fax and data
//<FT Data SQT: bitstring(7)> SQT value for Extended Power Class 6 terminals during fax and data
//<PANinit: bitstring(6)>
//<PANmin: bitstring(6)>
//<PANmax: bitstring(6)>
//<GainUp: bitstring(5)>
//<GainDn: bitstring(5)>
//<Olthresh: bitstring(5)>
//<OlupGain: bitstring(5)>
//<OldnGain: bitstring(5)>
//<VarUp: bitstring(5)>
//<VarDn: bitstring(5)>
//<SQIfactor: bitstring(5)>
//<Mestep: bitstring(4)>
//<LQI-n1: bitstring(4)>
//<LQI-n2: bitstring (4)>
struct PowerControlParams{
	unsigned char HHTSQT:7;
	unsigned char HHTDataSQT:7;
	unsigned char VTSQT:7;
	unsigned char VTDataSQT:7;
	unsigned char FTSQT:7;
	unsigned char FTDataSQT:7;
	unsigned char PANinit:6;
	unsigned char PANmin:6;
	unsigned char PANmax:6;
	unsigned char GainUp:5;
	unsigned char GainDn:5;
	unsigned char Olthresh:5;
	unsigned char OlupGain:5;
	unsigned char OldnGain:5;
	unsigned char VarUp:5;
	unsigned char VarDn:5;
	unsigned char SQIfactor:5;
	unsigned char Mestep:4;
	unsigned char LQI_n1:4;
	unsigned char LQI_n2:4;
};


class Class4C :public Class4{
public:
	Class4C();
	virtual ~Class4C();
//	ST4C_Header header;
	PowerControlParams powerControlParams;
	//<Spare: bitstring(26)>
	unsigned int spare:26;
};

#endif /* BCCH_CLASS4C_H_ */
